package com.lxmes.business.domain;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.lxmes.common.annotation.Excel;
import com.lxmes.common.core.domain.BaseEntity;

/**
 * 订单信息对象 cc_order_info
 * 
 * @author ruoyi
 * @date 2022-08-27
 */
public class CcOrderInfo extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 订单编号（主键） */
    private Long id;

    /** 公司名称 */
    @Excel(name = "公司名称")
    private String companyName;

    /** 公司编号 */
    @Excel(name = "公司编号")
    private Long deptId;

    /** 客户编号 */
    @Excel(name = "客户编号")
    private Long cusId;

    /** 客户名称 */
    @Excel(name = "客户名称")
    private String cusName;

    /** 项目名称 */
    @Excel(name = "项目名称")
    private String orderTitle;

    /** 开票日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "开票日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date kpDate;

    /** 地址 */
    @Excel(name = "地址")
    private String address;

    /** 票号 */
    @Excel(name = "票号")
    private String pNum;

    /** 货号 */
    @Excel(name = "货号")
    private String goodNum;

    /** 产品编号 */
    @Excel(name = "产品编号")
    private String itemCode;

    /** 产品名称 */
    @Excel(name = "产品名称")
    private String itemName;

    /** 规格型号 */
    @Excel(name = "规格型号")
    private String spec;

    /** 单位 */
    @Excel(name = "单位")
    private String unit;

    /** 单价 */
    @Excel(name = "单价")
    private BigDecimal price;

    /** 金额 */
    @Excel(name = "金额")
    private BigDecimal money;

    /** 备用字段1 */
    @Excel(name = "备用字段1")
    private String res1;

    /** 备用字段2 */
    @Excel(name = "备用字段2")
    private String res2;

    /** 备用字段3 */
    @Excel(name = "备用字段3")
    private String res3;
    //结账状态
    private String jzFlag;

    public String getJzFlag() {
        return jzFlag;
    }

    public void setJzFlag(String jzFlag) {
        this.jzFlag = jzFlag;
    }

    private List<CcOrderIteminfo> orderIteminfoList;

    public List<CcOrderIteminfo> getOrderIteminfoList() {
        return orderIteminfoList;
    }

    public void setOrderIteminfoList(List<CcOrderIteminfo> orderIteminfoList) {
        this.orderIteminfoList = orderIteminfoList;
    }

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setCompanyName(String companyName) 
    {
        this.companyName = companyName;
    }

    public String getCompanyName() 
    {
        return companyName;
    }
    public void setCusId(Long cusId) 
    {
        this.cusId = cusId;
    }

    public Long getCusId() 
    {
        return cusId;
    }
    public void setCusName(String cusName) 
    {
        this.cusName = cusName;
    }

    public String getCusName() 
    {
        return cusName;
    }
    public void setOrderTitle(String orderTitle) 
    {
        this.orderTitle = orderTitle;
    }

    public String getOrderTitle() 
    {
        return orderTitle;
    }
    public void setKpDate(Date kpDate) 
    {
        this.kpDate = kpDate;
    }

    public Date getKpDate() 
    {
        return kpDate;
    }
    public void setAddress(String address) 
    {
        this.address = address;
    }

    public String getAddress() 
    {
        return address;
    }
    public void setpNum(String pNum) 
    {
        this.pNum = pNum;
    }

    public String getpNum() 
    {
        return pNum;
    }
    public void setGoodNum(String goodNum) 
    {
        this.goodNum = goodNum;
    }

    public String getGoodNum() 
    {
        return goodNum;
    }
    public void setItemCode(String itemCode) 
    {
        this.itemCode = itemCode;
    }

    public String getItemCode() 
    {
        return itemCode;
    }
    public void setItemName(String itemName) 
    {
        this.itemName = itemName;
    }

    public String getItemName() 
    {
        return itemName;
    }
    public void setSpec(String spec) 
    {
        this.spec = spec;
    }

    public String getSpec() 
    {
        return spec;
    }
    public void setUnit(String unit) 
    {
        this.unit = unit;
    }

    public String getUnit() 
    {
        return unit;
    }
    public void setPrice(BigDecimal price) 
    {
        this.price = price;
    }

    public BigDecimal getPrice() 
    {
        return price;
    }
    public void setMoney(BigDecimal money) 
    {
        this.money = money;
    }

    public BigDecimal getMoney() 
    {
        return money;
    }
    public void setRes1(String res1) 
    {
        this.res1 = res1;
    }

    public String getRes1() 
    {
        return res1;
    }
    public void setRes2(String res2) 
    {
        this.res2 = res2;
    }

    public String getRes2() 
    {
        return res2;
    }
    public void setRes3(String res3) 
    {
        this.res3 = res3;
    }

    public String getRes3() 
    {
        return res3;
    }

    public Long getDeptId() {
        return deptId;
    }

    public void setDeptId(Long deptId) {
        this.deptId = deptId;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("companyName", getCompanyName())
            .append("cusId", getCusId())
            .append("cusName", getCusName())
            .append("orderTitle", getOrderTitle())
            .append("kpDate", getKpDate())
            .append("address", getAddress())
            .append("pNum", getpNum())
            .append("goodNum", getGoodNum())
            .append("itemCode", getItemCode())
            .append("itemName", getItemName())
            .append("spec", getSpec())
            .append("unit", getUnit())
            .append("price", getPrice())
            .append("money", getMoney())
            .append("remark", getRemark())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("res1", getRes1())
            .append("res2", getRes2())
            .append("res3", getRes3())
            .toString();
    }
}
